<?php 
	class Project{
		
		private $wp;

		/**
		@class Project

		Met en forme le jeux de données pour le Gantt
		*/
		public function __construct(){
			$this->wp = array();
		}

		/**
		@function addWP

		@param	string	name	Label du WP
		@param	string	start 	Date de debut 
		@param	string	fin 	Date de fin 
		@param	string	class 	Class spécifique pour le CSS 	NULL

		Permet d'ajouter des WP au model de donnée
		*/
		public function addWP($name, $start,$fin,$class=null){
			if(isset($class)){
				$this->wp[] = array(
				'label' => $name,
				'start' => $start, 
				'end'   => $fin,
				'class' => $class
				);
			}else{
				$this->wp[] = array(
				'label' => $name,
				'start' => $start, 
				'end'   => $fin
				);
			}
		}

		/**
		@function delWP

		@param	int	id	ID du WP

		Permet de supprimer des WP au model de donnée
		*/
		public function delWP($id){
			if($id != NULL)
				unset($this->wp[$id]);
			else
				eden("debug")->output("delWP: ID not found");
		}

		/**
		@function affWP

		Affiche les données du tableau
		*/
		private function affWP(){
			eden("debug")->output($this->wp);
		}

		/**
		@function getId

		@param	string	name	Nom du WP

		@return int

		Permet de retourner l'id d'un WP a  partir de son nom
		*/
		public function getId($name){
			foreach($this->wp as $k=>$v){
				if($v['label'] == $name)
					return $k;
			}
			return NULL;
		}

		/**
		@function getWP

		@return array

		Renvoie le tableau de données
		*/
		public function getWP(){
			if(Config::$debugProject)
				$this->affWP();
			return $this->wp;
		}

		public function getTitre(){
			return $this->titre;
		}	
  
	}
?>